Voice signals are transmitted over a packet network by first formatting the voice signal data stream into multiple discrete packets. In a Voice Over Internet Protocol (VoIP) call, an originating voice gateway quantizes an input audio stream into packets that are placed onto a packet network and routed to a destination voice gateway. The destination voice gateway decodes the packets back into a continuous digital audio stream that resembles the input audio stream. As an option, a compression or decompression algorithm may be used on the quantized digital audio stream to reduce the communication bandwidth required for transmitting the audio packets over the network.
Similar to conventional Internet Protocol, VoIP includes a plurality of layers. Prior Art FIG. 1 illustrates a plurality of exemplary well known layers 10 associated with VoIP. As shown, such layers include at least one application layer 12 and a plurality of session layers 14 positioned below the application layer 12. While not shown, at least one connection layer may be positioned below the session layer. By way of example, the application layer 12 may include H.323. H.323 is a standard approved by the International Telecommunication Union (ITU) in 1996 to promote compatibility in videoconference transmissions over IP networks. Further included as session layers are H.225.0, H.245, real-time transport protocol (RTP), and real-time transport control protocol (RTCP). It should be noted that VoIP calls can employ various protocols for communication purposes.
The Quality of Service (QoS) of VoIP calls can degrade due to congestion on the packet network or failure of network processing nodes in the packet network. Quality of service can include anything from call sound quality to the ability and responsiveness of the VoIP network in establishing new VoIP calls. IP network reliability has not been proven to be in the same class as a traditional switched Public Services Telephone Network (PSTN).
Due to a need to understand, troubleshoot and optimize a particular network to improve VoIP calls, there is an on-going desire for traditional network assessment tools to be tailored to monitor network parameters specific to VoIP calls. Network assessment tools referred to as “analyzers” are often relied upon to analyze networks communications at a plurality of layers. One example of such analyzers is the SNIFFER ANALYZER™ device manufactured by NETWORK ASSOCIATES, INC™. Analyzers have similar objectives such as determining why network performance is slow, understanding the specifics about excessive traffic, and/or gaining visibility into various parts of the network.
As mentioned earlier, network analyzers collect information at a plurality of layers. Each set of layer-specific data is conventionally stored in a buffer “object” by the network analyzer. In particular, a session object, an application object, etc. are each used to store network traffic information at session and application layers, respectively.
In use, session objects are traditionally created for each portion of a VoIP call between an endpoint and the call manager. Each of such portions of the VoIP call is traditionally known as a “leg.” It should be noted that there are traditionally at least two legs per VoIP call, where users communicate from a pair of endpoints by way of a call manager.
As mentioned hereinabove, a session object is created for each leg of a VoIP call between an endpoint and the call manager. In the prior art, a separate application object is also stored for each leg of the VoIP call. Unfortunately, such arrangement makes it more difficult to monitor and analyze VoIP call traffic, since the number of application objects may grow at a rate similar to the session objects.
For example, in a “tree representation” where a plurality of session objects are associated with a single application object in order to more efficiently organize the objects, the prior art method would result in an unmanageable number of “nodes” (i.e. separate trees) since only one session object would be associated with each application object. Thus, any conventional advantages associated with a “tree representation” would not be realized.
There is thus a need for a better way to organize data relating to VoIP call traffic to facilitate understanding, troubleshooting, and optimizing a particular network to improve VoIP calls.